Rate compatible codes can provide various coding rates and coding performances with a single encoder and decoder by applying various punctured patterns to parities added to correct errors in an error correction code. Because of this advantage, the rate compatible codes have been applied to adaptive coding and hybrid automatic repeat request (ARQ) in a time varying channel environment.
The rate compatible codes are formed by applying an optimal punctured pattern to convolutional codes or turbo codes based on convolutional codes. U.S. Pat. No. 6,430,722 and Korean Patent Laid-Open No. 2001-052246 disclose rate compatible coding methods applied to turbo codes based on convolutional codes. They suggest methods for generating codes with various coding rates by puncturing bits with an optimal punctured pattern.
The method has been applied to convolutional codes and used in adaptive coding schemes for various channel conditions in wireless communications. For the fourth-generation mobile communication systems, hybrid ARQ schemes using rate compatible turbo codes are described in the literatures below, which are incorporated herein by reference.
(1) Douglas N. Rowitch and Laurence B. Milstein, “On the Performance of Hybrid FEC/ARQ Systems Using Rate Compatible Punctured Turbo (RCPT) Codes,” IEEE Transactions on Communications, Vol. 48, No. 6, June 2000, pp. 948-959
(2) Hasung Kim and Gordon L. Stuber, “Rate Compatible Punctured Turbo Coding for W-CDMA,” ICPWC2000, pp. 143-147
(3) Hasung Kim and Gordon L. Stuber, “Rate Compatible Punctured SCCC,” VTC 2001 Fall, Vol. 4, pp. 2399-2403
(4) Naveen Chandran and Mathew C. Valenti, “Hybrid ARQ Using Serial Concatenated Convolutional Codes over Fading Channels,” VTC 2001 Spring, 6-9 May 2001 Rhodes, Greece, Vol. 2, pp. 1410-1414
(5) Jean X. Yu, Yuan Li, Hidekazu Murata, and Susumu Yoshida, “Hybrid-ARQ Scheme Using Different TCM for Retransmission,” IEEE Transactions on Communications, Vol. 48, No. 10, October 2000, pp. 1609-1613
As the references show, although the rate compatible codes can be applied to various areas, no prior art suggests rate compatible codes using block codes. This is because, in block codes, rate compatible codes cannot be formed by using various punctured patterns in convolutional codes. If they are formed in the same method as convolutional codes, performance is seriously degraded. This is disclosed by Tingfang Ji and Wayne E. Stark, “Rate Compatible Product Codes,” Proceedings of MILCOM 2000, Vol. 1, pp. 412-416.”
There have been a few examples of rate compatible codes using block codes, which is somewhat different from that using convolutional codes, and this is shown in the following literatures. A paper “Rate Compatible Product Codes” published by Tingfang Ji and Wayne E. Stark in Proceedings of MILCOM 2000, Vol. 1, pp. 412-416 discloses rate compatible codes using four-dimensional product codes.
The product codes used in the paper, however, are not product codes in a strict sense. They simply generate distinct parities for each interleaving. For example, they generate a code word or a parity for the information interleaved in rows if the block codes codes are one-dimensional. They additionally generate a code word or a parity for the information interleaved in columns, if the product codes are two-dimensional. Again, They additionally generate a code word or a parity for the information interleaved in diagonal_directions when the product codes are three/four-dimensional.
In a transmission unit, various coding rates are generated based on how many of the four parities are transmitted. In a decoding unit, decoding performance is enhanced through repeated decoding processes, because all the parities are formed using the same information word.
In other words, if the original code is considered as the code with all parities generated in four interleaving methods, then various coding rates cannot be generated by puncturing a part of the original code. This method, however, has a disadvantage that the performance cannot be increased by increasing the dimension.
This implies that the performance of the original code with all parities can be even worse than the punctured code with a part of the parity in a random error channel.
This is because the above mentioned code could not use the unique property of the product code, explained in the following)
The product code is serial concatenation of block codes with a block interleaver within them. Therefore, there are parities on parities (checks on checks), and the check digits on check digits are the same whether the checks on rows or on columns are computed first.
In addition, there have been a few schemes generating various coding rates using block codes, although they are not rate compatible codes in the following references 6 and 7. However, they have problems that they only generate limited number of coding rates, that they may produce unacceptable performance with a single code or they cannot be decoded with a single code.
(6) K. S. Chan, Li Ping and S. Chan, “Adaptive type II hybrid ARQ scheme using zigzag code,” Electronics Letters, 25 Nov. 1999, Vol. 35, No. 24, pp. 2102-2104
(7) Ch. V. Verikoukis and J. J. Olmos, “An Efficient Type II Hybrid ARQ Protocol Using Punctured R-S Codes for Wireless ATM Networks,” VTC99 Fall, Vol. 3, 1725-1729
Besides, Korean patent application No. 2001-56774 discloses an Iterative Decoding Method for Block Turbo Codes of Greater than Three Dimensions.